package cn.itcast.service.cargo;

import cn.itcast.domain.cargo.Packing;
import cn.itcast.domain.cargo.PackingExample;
import com.github.pagehelper.PageInfo;

import java.util.List;
import java.util.Map;

public interface PackingService {

    Packing toAddPacking(String exportIds);

    /**
     * 添加业务
     */
    void save(Packing packing);

    /**
     * 分页列表展示
     */
    PageInfo<Packing> findByPage(PackingExample packingExample, Integer pageNum, Integer pageSize);

    List<Packing> selectByExample(PackingExample example);

    Packing selectByPrimaryKey(String packingListId);

    /**
     * 检查报运单的状态，是否能提交装箱单
     */
    Map<String, Object> checkAdd(String exportIds);

    /**
     * 删除业务
     */
    void delete(String packingListId);

    /**
     * 公用改变Export的state属性值的方法
     * @param exportIds 需要改变的exportId字符串
     * @param stateNum 需要改变为的state属性值
     */
    public void changeExportState(String exportIds, int stateNum);

    Map<String, Object> checkStatus(String exportIds);
}
